1. Field of the Invention
The present invention generally relates to a memory system for electronic computer systems and the like, and more particularly to an improved method and apparatus for a computer memory system where high-bandwidth and flexible frame-buffer configuration are needed, without granularity problems, for image and graphics drawings as well as screen refresh operations in a high resolution video display.
2. Background Description
The original International Business Machines (IBM) personal computer (PC) display memory comprised a reserved sixty-four kilobyte (64 KB) block of random access memory (RAM) address space of which 4 KB was used for a monochrome character based display adapter and 16 KB was used for an optional color graphics display adapter (CGA). The additional reserved address space was intended for higher resolution displays than the original monochrome and color graphics displays. This memory address allocation was based on the one megabyte (1 MB) of addressing available to the 16-bit internal architecture of the Intel 8088 microprocessor used in the IBM PC. To provide backward compatibility, this "legacy" address space was retained in successive generations of microprocessors and operating systems. The first of the higher resolution displays was the enhanced graphics adapter (EGA) display specification, and this was followed by the video graphics array (VGA) display specification.
Today, PCs are being used for ever more demanding display functions, especially in multi-media applications and computer aided design (CAD) and graphics rendering applications. Multi-media applications include full motion video clips using the Motion Picture Expert Group (MPEG) standard. CAD and graphics rendering applications are used to generate three dimensional (3D) views which may be used to "visualize" a physical structure including a simulated walk through the structure.
These demanding display functions require more and more memory allocations, but simply adding memory addresses dedicated to the display function does not solve the problem and, in fact, creates new problems. First of all there is a data rate or bandwidth problem in simply getting the data in memory to the display adapter that generates the displayed image. Secondly, some proposed solutions to the data rate problem in turn create a granularity problem. These and other display problems are expected to become worse in the future.
One approach to solving the display memory problems is the adoption of the Unified Memory Architecture (UMA) specification where the main memory and frame-buffer are combined into a single memory system. This architecture has the advantage that it can reduce the total memory capacity by flexibly sharing the memory area for main memory and frame-buffer and can solve the granularity problem for low-end PCs. However, UMA display systems are known to have performance problems when the graphics performance and resolution demands increase.